package org.jeecgframework.web.service;

import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import org.jeecgframework.core.common.model.json.AjaxJson;
import org.jeecgframework.web.util.FileBean;

/**
 * @Title: UploadEquipmentService
 * @Description: 备件更换记录
 * @author ZhangYunlong
 * @date 2016-04-01
 * @version V1.0
 * 
 */
public interface UploadEquipmentService {
	/**
	 * @Title：doCheckAndSaveExcelByRenewal
	 * @Description：验证并且修改
	 * @author：LeiYoung
	 * @Date：2016年10月13日 上午10:36:19
	 * @param request
	 * @return int
	 */
	public AjaxJson doCheckAndUpdateExcelByRenewal(FileBean fileBean, AjaxJson aj) throws Exception;

	/**
	 * @author ZhangYunlong
	 * @Date 2016-3-31 下午4:53:06
	 * @Description 解析EXCEL
	 * @param req
	 *            通过前台请求获得文件流
	 */
	public List<Map<String, String>> parseExcel(HttpServletRequest req, AjaxJson j);

	/**
	 * @Description 批量保存
	 * @param List
	 *            <T>
	 */
	public <T> void batchSave(List<T> entitys);

	/**
	 * @author xiul 2016-6-7 下午5:35:05 Description 解析excel
	 * @param filePath
	 */
	public void readExcel(String filePath);

	/**
	 * @author xiul 2016-6-13 上午10:16:00 Description 检查上传excel中sn是否有重复
	 * @param snList
	 *            sn 集合
	 * @param begin
	 *            循环开始index
	 * @param snList
	 *            循环结束index
	 * @return
	 */
	public Map<String, String> checkSnRepeat(List<Map<String, String>> snMapList, int begin, int end);
}
